package com.sgb.kjwl.di.pick;

import com.sgb.kjwl.repository.HomeRepertory;
import com.sgb.kjwl.repository.PickRepertory;
import com.sgb.kjwl.repository.impl.HomeRepertoryImpl;
import com.sgb.kjwl.repository.impl.PickRepertoryImpl;
import com.sgb.kjwl.view.ui.activity.pick.EnterpriseBiddingActivity5;
import com.sgb.jicai.view.activity.FactoryJicaiActivity;
import com.sgb.jicai.view.activity.JcChanceListActivity;
import com.sgb.jicai.view.activity.JcMyPriceActivity;
import com.sgb.jicai.view.activity.MyJicaiSupervisionActivity;
import com.sgb.kjwl.view.ui.activity.pick.PickInfoActivity;
import com.sgb.kjwl.view.ui.activity.pick.PickNoticeActivity;
import com.sgb.kjwl.view.ui.activity.pick.PickNoticeBidDetailActivity;
import com.sgb.kjwl.view.ui.activity.pick.PickNoticeDetailActivity;
import com.sgb.kjwl.view.ui.activity.pick.PickNoticeSearchActivity;
import com.sgb.kjwl.view.ui.activity.pick.PickRequireListActivity3;
import com.sgb.kjwl.view.ui.activity.pick.PickSearchActivity;
import com.sgb.kjwl.view.ui.activity.pick.PickWinningNoticeActivity;
import com.sgb.kjwl.view.ui.activity.pick.PickWinningNoticeSearchActivity;
import com.sgb.kjwl.view.ui.activity.pick.QuoteImmediatelyActivity;
import com.sgb.kjwl.view.ui.activity.pick.TenderDetailsActivity3;
import com.sgb.kjwl.view.ui.activity.self.pick.SelfPickListActivity4;
import com.sgb.kjwl.viewmodel.pick.EnterpriseBiddingModel5;
import com.sgb.kjwl.viewmodel.pick.PickInfoModel;
import com.sgb.kjwl.viewmodel.pick.PickNoticeBidDetailModel;
import com.sgb.kjwl.viewmodel.pick.PickNoticeDetailModel;
import com.sgb.kjwl.viewmodel.pick.PickNoticeModel;
import com.sgb.kjwl.viewmodel.pick.PickNoticeSearchModel;
import com.sgb.kjwl.viewmodel.pick.PickRequireListModel3;
import com.sgb.kjwl.viewmodel.pick.PickSearchModel;
import com.sgb.kjwl.viewmodel.pick.PickWinningNoticeModel;
import com.sgb.kjwl.viewmodel.pick.PickWinningNoticeSearchModel;
import com.sgb.kjwl.viewmodel.pick.QuoteImmediatelyModel;
import com.sgb.kjwl.viewmodel.pick.SelfPickList4Model;
import com.sgb.kjwl.viewmodel.pick.TenderDetailsModel3;
import com.swgk.core.base.di.Activity;
import com.swgk.core.base.api.BaseApiSource;
import com.swgk.core.base.model.preference.BasePreferenceSource;

import dagger.Module;
import dagger.Provides;

@Module
public class PickModule {
    private EnterpriseBiddingActivity5 enterpriseBiddingActivity5;
    private QuoteImmediatelyActivity quoteImmediatelyActity;
    private TenderDetailsActivity3 tenderDetailsActivity3;
    private PickNoticeDetailActivity pickNoticeDetailActivity;
    private PickNoticeBidDetailActivity pickNoticeBidDetailActivity;
    private PickRequireListActivity3 pickRequireListActivity3;
    private PickInfoActivity pickInfoActivity;
    private SelfPickListActivity4 selfPickListActivity4;
    private PickSearchActivity pickSearchActivity;
    private PickNoticeActivity pickNoticeActivity;
    private PickNoticeSearchActivity pickNoticeSearchActivity;
    private PickWinningNoticeActivity pickWinningNoticeActivity;
    private PickWinningNoticeSearchActivity pickWinningNoticeSearchActivity;


    public PickModule(PickNoticeBidDetailActivity pickNoticeBidDetailActivity1) {
        this.pickNoticeBidDetailActivity = pickNoticeBidDetailActivity1;
    }

    public PickModule(SelfPickListActivity4 selfPickListActivity4) {
        this.selfPickListActivity4 = selfPickListActivity4;
    }

    public PickModule(PickNoticeDetailActivity pickNoticeDetailActivity1) {
        this.pickNoticeDetailActivity = pickNoticeDetailActivity1;
    }

    public PickModule(PickInfoActivity pickInfoActivity1) {
        this.pickInfoActivity = pickInfoActivity1;
    }

    public PickModule(EnterpriseBiddingActivity5 enterpriseBiddingActivity5) {
        this.enterpriseBiddingActivity5 = enterpriseBiddingActivity5;
    }

    public PickModule(QuoteImmediatelyActivity quoteImmediatelyActity) {
        this.quoteImmediatelyActity = quoteImmediatelyActity;
    }

    public PickModule(TenderDetailsActivity3 tenderDetailsActivity3) {
        this.tenderDetailsActivity3 = tenderDetailsActivity3;
    }

    public PickModule(PickRequireListActivity3 pickRequireListActivity3) {
        this.pickRequireListActivity3 = pickRequireListActivity3;
    }

    public PickModule(PickSearchActivity pickSearchActivity) {
        this.pickSearchActivity = pickSearchActivity;
    }

    public PickModule(PickNoticeActivity pickNoticeActivity) {
        this.pickNoticeActivity = pickNoticeActivity;
    }

    public PickModule(PickNoticeSearchActivity pickNoticeSearchActivity) {
        this.pickNoticeSearchActivity = pickNoticeSearchActivity;
    }

    public PickModule(PickWinningNoticeActivity pickWinningNoticeActivity) {
        this.pickWinningNoticeActivity = pickWinningNoticeActivity;
    }

    public PickModule(PickWinningNoticeSearchActivity pickWinningNoticeSearchActivity) {
        this.pickWinningNoticeSearchActivity = pickWinningNoticeSearchActivity;
    }


    @Provides
    @Activity
    HomeRepertory provideHomeRepertory(BaseApiSource apiSource, BasePreferenceSource
            preferenceSource) {
        return new HomeRepertoryImpl(apiSource, preferenceSource);
    }

    @Provides
    @Activity
    PickRepertory providePickRepertory(BaseApiSource apiSource, BasePreferenceSource
            preferenceSource) {
        return new PickRepertoryImpl(apiSource, preferenceSource);
    }

    @Provides
    @Activity
    TenderDetailsModel3 tenderDetailsModel3(PickRepertory repertory) {
        return new TenderDetailsModel3(tenderDetailsActivity3, repertory);
    }

    @Provides
    @Activity
    EnterpriseBiddingModel5 enterpriseBiddingModel5(PickRepertory repertory) {
        return new EnterpriseBiddingModel5(enterpriseBiddingActivity5, repertory);
    }

    @Provides
    @Activity
    QuoteImmediatelyModel quoteImmediatelyModel(PickRepertory repertory) {
        return new QuoteImmediatelyModel(quoteImmediatelyActity, repertory);
    }

    @Provides
    @Activity
    PickNoticeDetailModel pickNoticeDetailModel(PickRepertory repertory) {
        return new PickNoticeDetailModel(pickNoticeDetailActivity, repertory);
    }

    @Provides
    @Activity
    PickNoticeBidDetailModel pickNoticeBidDetailModel(PickRepertory repertory) {
        return new PickNoticeBidDetailModel(pickNoticeBidDetailActivity, repertory);
    }

    @Provides
    @Activity
    PickRequireListModel3 providePickRequireListModel3(PickRepertory repertory) {
        return new PickRequireListModel3(pickRequireListActivity3, repertory);
    }

    @Provides
    @Activity
    PickInfoModel pickInfoModel(PickRepertory repertory) {
        return new PickInfoModel(pickInfoActivity, repertory);
    }



    @Provides
    @Activity
    SelfPickList4Model selfPickList4Model(PickRepertory repertory) {
        return new SelfPickList4Model(selfPickListActivity4, repertory);
    }





    @Provides
    @Activity
    PickSearchModel pickSearchModel(PickRepertory repertory) {
        return new PickSearchModel(pickSearchActivity, repertory);
    }

    @Provides
    @Activity
    PickNoticeModel pickNoticeModel(PickRepertory repertory) {
        return new PickNoticeModel(pickNoticeActivity, repertory);
    }

    @Provides
    @Activity
    PickNoticeSearchModel pickNoticeSearchModel(PickRepertory repertory) {
        return new PickNoticeSearchModel(pickNoticeSearchActivity, repertory);
    }

    @Provides
    @Activity
    PickWinningNoticeModel pickWinningNoticeModel(PickRepertory repertory) {
        return new PickWinningNoticeModel(pickWinningNoticeActivity, repertory);
    }

    @Provides
    @Activity
    PickWinningNoticeSearchModel pickWinningNoticeSearchModel(PickRepertory repertory) {
        return new PickWinningNoticeSearchModel(pickWinningNoticeSearchActivity, repertory);
    }
}

